package com.yjh.common.config;

import com.yjh.common.other.LoginInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
//    @Override
//    public void addResourceHandlers(ResourceHandlerRegistry registry) {
//        // 映射图片目录：访问/api/common/images/** 指向模块内的static/images
//        registry.addResourceHandler("/api/common/images/**")
//                .addResourceLocations("classpath:/static/images/");
//        // classpath:/static/images/ 等价于 common模块的src/main/resources/static/images
//    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new LoginInterceptor())
                // 1. 需要拦截的接口（所有接口，除了放行的）
                .addPathPatterns("/**")
                // 2. 放行的接口（登录接口、静态资源等）
                .excludePathPatterns(
                        "/admin/ral/login", // 登录接口必须放行
                        "/admin/ral/register", // 注册接口
                        "/admin/common/static/**", // 静态资源（如图片）
                        "/mini/ral/login", // 登录接口必须放行
                        "/mini/ral/register", // 注册接口
                        "/mini/common/static/**" // 静态资源（如图片）
                );
    }
}
